1. В рамках транзакции с уровнем изоляции Repeatable Read выполнить следующие операции:
- заархивировать (SELECT INTO или CREATE TABLE AS) заказчиков, которые сделали покупок менее чем на 2000 у.е.
- удалить из таблицы заказчиков всех заказчиков, которые были предварительно заархивированы (подсказка: для этого придётся удалить данные из связанных таблиц)
2. В рамках транзакции выполнить следующие операции:
- заархивировать все продукты, снятые с продажи (см. колонку discontinued)
- поставить savepoint после архивации
- удалить из таблицы продуктов все продукты, которые были заархивированы
- откатиться к savepoint
- закоммитить тразнакцию